package appCache

//ICacheRepository 缓存仓储接口
type ICacheRepository interface {
	//Set 插入单个
	// key 数据唯一key
	// entity  结构体
	// ttl     单位秒 ，0为永不到期
	Set(key string, entity interface{}, ttl int64) (int64, error)

	//Get 获取单个
	//key 数据唯一key
	Get(key string) (entity interface{}, err error)

	//Remove 删除
	// key key值
	Remove(key ...string) (int64, error)

	//OnEvicted 设置到期回调
	//f 回调函数 (key,data,count,aging)
	OnEvicted(f func(items ...CleanItem))
}